シリアル通信
概要
RS-232C等を利用してシリアル通信するための種類です。
作成する方法
【名前】というシリアル通信を作る
手順
【自分】から送信バッファをクリアする
ポートにある送信用バッファをクリアします
【自分】から受信バッファをクリアする
ポートにある受信用バッファをクリアします
【自分】を、開く
ポートを開き、通信を受信できる状態にします
【自分】から一字だけ受信する
ポートが受信したデータをテキスト形式で1文字分だけ読み取ります。
【自分】から一行だけ受信する
ポートが受信したデータをテキスト形式で1行分だけ読み取ります。
【自分】から受信する
ポートが受信したすべてデータを、テキスト形式で読み取ります。
【自分】から【終了文字列】まで受信する
ポートが受信したデータを指定した終了文字列が現れるまでテキスト形式で読み取ります。
【自分】から1バイトだけ受信する
ポートが受信したデータを1バイト分だけ受け取ります。
【自分】からバイナリ形式で受信する:バイナリ形式
ポートが受信したすべてデータを、バイナリ形式で読み取ります。
【自分】から【文字】を、送信する
ポートへテキスト形式でデータを送信します。
使用する文字コードは「文字コード」設定項目で指定します。
【自分】から【文字】を、バイナリ形式で送信する
ポートへバイナリ形式でデータを送信します
【自分】を、閉じる
ポートを閉じます
設定項目
設定項目 | 型 | 説明 | |
---|---|---|---|
キャリア検出 | 真偽 | □ | キャリアを検出したかどうかを表します |
ストップビット | 列挙 | ◎ | 1バイトあたりのストップビットの標準数 {One,Two,OnePointFive} |
データビット数 | 整数 | ◎ | 1バイトあたりのビット数 |
データ準備信号 | 真偽 | □ | データ準備(Data Set Ready)信号を検出したかどうかを表します |
データ末端信号 | 真偽 | ◎ | データ末端(Data Terminal Ready)信号を検出したかどうかを表します |
パリティチェック方式 | 列挙 | ◎ | パリティのチェック方法 {Odd (奇数),Even (偶数),Mark (常に1),Space(常に0)} |
ブレイク信号 | ◎ | ブレイク信号 | |
ポート名 | 文字列 | ◎ | 接続先のポート名 |
ポート名一覧 | □ | シリアル通信で利用できるポート名一覧を取得します | |
ボーレート | 整数 | ◎ | シリアルのボーレート |
改行文字 | 文字列 | ◎ | データ送信を表す文字 |
空文字無視 | 真偽 | ◎ | 空文字(nullバイト)を無視するかどうか |
受信データサイズ | 整数 | □ | 受信バッファにあるデータのサイズ |
受信バッファサイズ | 整数 | ◎ | 受信バッファのサイズ |
受信準備完了 | 真偽 | □ | 受信準備完了(Clear To Send)信号を検出したかどうかを表します |
受信待機時間 | 整数 | ◎ | 受信時にタイムアウトとする時間 |
接続済み | 真偽 | □ | ポートが開かれているかどうか |
送信データサイズ | 整数 | □ | 送信バッファにあるデータのサイズ |
送信バッファサイズ | 整数 | ◎ | 送信バッファのサイズ |
送信待機時間 | 整数 | ◎ | 送信時にタイムアウトとする時間 |
送信要求 | 真偽 | ◎ | 送信要求(Request To Send)信号を検出したかどうかを表します |
通信確立方式 | 列挙 | ◎ | 使用するハンドシェイクプロトコル {XOnXOff, RequestToSend, RequestToSendXOnXOff} |
内部受信バッファサイズ | 整数 | ◎ | 内部入力バッファのサイズ |
破損代替文字 | 文字列 | ◎ | データが壊れた際に使用する文字 |
文字コード | 文字列 | ◎ | テキスト形式で送受信する時の文字コード |
イベント手順
部品から継承されるイベント手順のほか、次のイベント手順が使用できます。
サンプルコード
シリアルポートへメッセージを送信する
電話というシリアル通信を作る 電話のポート名は「COM3」 電話を開く 電話から「(コマンド)」を送信する 電話から一行だけ受信して、結果とする 結果を表示する 電話を閉じる
シリアルポートからメッセージを受信する
シリアルポートから受け取った情報を表示するプログラム例です。
メイン画面を表示する 待機する メイン画面とは ウィンドウを継承する はじめの手順 初期化する 終わり 初期化する手順 この実質大きさを{284,262}に変える この内容を「メイン画面」に変える この位置固定方向を5に変える ボタン1というボタンを作る その位置と大きさを{25,20,75,23}に変える その内容を「ボタン1」に変える その位置固定方向を5に変える この設計スケール比率を{96,96}に変える 終わり ボタン1がクリックされた時の手順 電話というシリアル通信を作る 電話のポート名は「COM1」 電話を開く 電話から一行だけ受信して、結果とする 結果を表示する 電話を閉じる 終わり 終わり